#ifndef ZLGCANDEVICE_H
#define ZLGCANDEVICE_H

#include "candevice.h"
#include "controlcan.h"
#include <QObject>
class ZLGCanDevice : public CanDevice {
    Q_OBJECT
public:
    ZLGCanDevice( CanDevice* parent = nullptr );
    DWORD CanDeviceOpen( DWORD dwType, DWORD dwIndex, CHAR* pDescription );
    DWORD CanDeviceClose( DWORD dwDeviceHandle, DWORD dwIndex );
    DWORD CanChannelStopDeviceClose( DWORD dwDeviceHandle, DWORD dwType, DWORD dwIndex, DWORD dwChannel );
    DWORD CanChannelStart( DWORD dwDeviceHandle, DWORD dwType, DWORD dwIndex, DWORD dwChannel, CanInitConfig* pInitConfig );
    ULONG CanChannelSend( DWORD dwDeviceHandle, DWORD dwType, DWORD dwIndex, DWORD dwChannel, CanDataFrame* frame, ULONG nCount );
    ULONG CanChannelReceive( DWORD dwDeviceHandle, DWORD dwType, DWORD dwIndex, DWORD dwChannel, CanDataFrame* pReceive, ULONG nCount, INT nWaitTime );
};

#endif  // ZLGCANDEVICE_H
